shell 结构以及执行

        写第一个 shell 脚本

1
2
[root@192 ~]# cd /usr/local/sbin
[root@192 sbin]# vim first.sh

        加入内容

1
2
3
4
5
#!/bin/bash
#this is my first script.
#written by yanyi.
date
echo "Hello woeld!"

        shell 脚本通常都是以 .sh 为后缀的。这个并不是说不带 .sh 这个脚本就不能执行,只是大家的一个习惯。所以,以后发现了 .sh 为后缀的文件那么它可能是一个 shell 脚本。first.sh 中第一行要以 “#!/bin/bash” 开头,代表的意思是,该文件使用的是 bash 语法。如果不设置该行,虽然 shell 脚本也可以执行,但是不符合规范。如果把这个脚本放到一个默认 shell 并非 bash 的系统里,那么这个脚本很有可能是不能成功执行的,因为 bash 和其他的 shell 不兼容。 # 表示注释,这个符号后面跟一些该脚本的相关注释内容以及作者和创建日期或者版本等。当然这些注释并非必须的,也可以省略掉,但是不建议省略。因为随着工作时间的逐渐过渡,很有肯能忘记该脚本是用来干什么的,以及什么时候写的。所有写上注释是有必要的。另外,系统管理员并非只有有一个人,如果是其他管理员查看脚本,看不懂会很郁闷。

        执行脚本

1
[root@192 sbin]# sh first.sh

        其实 shell 脚本还有另一种执行方法:

1
[root@192 sbin]# ./first.sh

        想要使用另一种方法运行 shell 脚本,前提是脚本本身有执行权限。所以,需要给脚本加一个 x 权限。另外使用 sh 命令去执行一个 shell 脚本的时候是可以加 -x 选项来查看这个脚本执行过程的,这样有利于我们调试这个脚本哪里出了问题:

1
[root@192 sbin]# sh -x first.sh